package com.cap.bts.crmdp.dealer.remind.domain;

import java.io.Serializable;
import java.util.Date;

import javax.persistence.AttributeOverride;
import javax.persistence.AttributeOverrides;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

import org.hibernate.annotations.Cache;
import org.hibernate.annotations.CacheConcurrencyStrategy;

import com.cap.bts.framework.common.domain.BaseDomain;

@Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
@Entity
@Table(name="tm_raw_service_remind_arch")
@AttributeOverrides({
    @AttributeOverride(name="createBy", column=@Column(name="CREATE_BY")),
    @AttributeOverride(name="createDate", column=@Column(name="CREATE_DATE", nullable = false)),
    @AttributeOverride(name="lastUpdateBy", column=@Column(name="LAST_UPDATE_BY")),
    @AttributeOverride(name="lastUpdateDate", column=@Column(name="LAST_UPDATE_DATE"))
})
public class ServiceRemindArch extends BaseDomain implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	private Long id;
	private String carPlate;
	private String carModel;
	private String maintenanceItem;
    private String lastPartBrand;
    private String lastPartName;
    private String lastMaintenanceStore;
    private Date lastMaintenanceDate;
    private Double lastMaintenanceMileage;
    private String lastCarcheckStore;
    private Date lastCarcheckDate;
    private Double lastCarcheckMileage;
    private String nextCalcbasis;
    private String maintenanceSpecBasis;
    private Date nextCalcDate;
    private Double nextCalcMileage;
    
    @Id
    @GeneratedValue(strategy=GenerationType.AUTO)
	public Long getId() {
		return id;
	}
	public void setId(Long id) {
		this.id = id;
	}
	@Column(name="car_plate")
	public String getCarPlate() {
		return carPlate;
	}
	public void setCarPlate(String carPlate) {
		this.carPlate = carPlate;
	}
	@Column(name="car_model")
	public String getCarModel() {
		return carModel;
	}
	public void setCarModel(String carModel) {
		this.carModel = carModel;
	}
	@Column(name="maintenance_item")
	public String getMaintenanceItem() {
		return maintenanceItem;
	}
	public void setMaintenanceItem(String maintenanceItem) {
		this.maintenanceItem = maintenanceItem;
	}
	@Column(name="last_part_brand")
	public String getLastPartBrand() {
		return lastPartBrand;
	}
	public void setLastPartBrand(String lastPartBrand) {
		this.lastPartBrand = lastPartBrand;
	}
	@Column(name="last_part_name")
	public String getLastPartName() {
		return lastPartName;
	}
	public void setLastPartName(String lastPartName) {
		this.lastPartName = lastPartName;
	}
	@Column(name="last_maintenance_store")
	public String getLastMaintenanceStore() {
		return lastMaintenanceStore;
	}
	public void setLastMaintenanceStore(String lastMaintenanceStore) {
		this.lastMaintenanceStore = lastMaintenanceStore;
	}
	@Column(name="last_maintenance_date")
	public Date getLastMaintenanceDate() {
		return lastMaintenanceDate;
	}
	public void setLastMaintenanceDate(Date lastMaintenanceDate) {
		this.lastMaintenanceDate = lastMaintenanceDate;
	}
	@Column(name="last_maintenance_mileage")
	public Double getLastMaintenanceMileage() {
		return lastMaintenanceMileage;
	}
	public void setLastMaintenanceMileage(Double lastMaintenanceMileage) {
		this.lastMaintenanceMileage = lastMaintenanceMileage;
	}
	@Column(name="last_carcheck_store")
	public String getLastCarcheckStore() {
		return lastCarcheckStore;
	}
	public void setLastCarcheckStore(String lastCarcheckStore) {
		this.lastCarcheckStore = lastCarcheckStore;
	}
	@Column(name="last_carcheck_date")
	public Date getLastCarcheckDate() {
		return lastCarcheckDate;
	}
	public void setLastCarcheckDate(Date lastCarcheckDate) {
		this.lastCarcheckDate = lastCarcheckDate;
	}
	@Column(name="last_carcheck_mileage")
	public Double getLastCarcheckMileage() {
		return lastCarcheckMileage;
	}
	public void setLastCarcheckMileage(Double lastCarcheckMileage) {
		this.lastCarcheckMileage = lastCarcheckMileage;
	}
	@Column(name="next_calc_basis")
	public String getNextCalcbasis() {
		return nextCalcbasis;
	}
	public void setNextCalcbasis(String nextCalcbasis) {
		this.nextCalcbasis = nextCalcbasis;
	}
	@Column(name="maintenance_spec_basis")
	public String getMaintenanceSpecBasis() {
		return maintenanceSpecBasis;
	}
	public void setMaintenanceSpecBasis(String maintenanceSpecBasis) {
		this.maintenanceSpecBasis = maintenanceSpecBasis;
	}
	@Column(name="next_calc_date")
	public Date getNextCalcDate() {
		return nextCalcDate;
	}
	public void setNextCalcDate(Date nextCalcDate) {
		this.nextCalcDate = nextCalcDate;
	}
	@Column(name="next_calc_mileage")
	public Double getNextCalcMileage() {
		return nextCalcMileage;
	}
	public void setNextCalcMileage(Double nextCalcMileage) {
		this.nextCalcMileage = nextCalcMileage;
	}
}
